Compression of digital video data is used for many applications including transmission over bandwidth constrained channels, such as direct broadcast satellite, a controller to an access point, an access point to a client device, and storage on optical media. In order to achieve efficient compression, complex, computationally intensive processes are used for encoding (compressing) and decoding (decompressing) video. For example, MPEG-2 (Moving Pictures Expert Group, International organization for Standards, Geneva, Switzerland) is known as an efficient method for compressing video.
Most modern digital video compression schemes, like H.264 (“Advanced Video Coding”, International Telecommunication Union Telecommunication Standardization Sector, Geneva, Switzerland), employ the concept of encoding a video stream as a set of intra-coded frames (referred to herein as “I-frames”) and predictive frames (referred to herein as “P-frames”). I-frames include still pictures with image information. I-frames may be used as reference frames for P-frames. For example, P-frames may include information referring to one or more I-frames and indicate differences from the one or more I-frames. Furthermore, some P-frames may be used as reference frames for other P-frames. For example, a P-frame may include information referring to another P-frame and indicate differences from the other P-frame. A particular predictive frame that references to at least one frame to-be-displayed prior to that particular predictive frame and at least one frame to-be-displayed subsequent to that particular predictive frame may be referred to as a bi-predictive frame (referred to herein as “B-Frames”).
The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.